package com.diandian.backend.order.param;

import com.diandian.base.boot.starter.exception.DefaultException;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.diandian.backend.order.dto.OrderOnlineDouyinLifePageParamDTO;

import java.io.Serializable;
import java.util.Date;

public class OrderOnlineDouyinLifePageParam implements Serializable {

	private Integer pageNum;
	private Integer pageSize;
	private String belongEql;
	private String belongLike;
	private String onlineOrderNumEql;
	private String onlineOrderNumLike;
	private String onlineOrderTypeEql;
	private String onlineOrderTypeLike;
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date onlineOrderTimeBefore;
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date onlineOrderTimeAfter;
	private Integer onlineOrderCouponCount;
	private Double onlineOrderPrice;
	private String onlineChannelEql;
	private String onlineChannelLike;
	private String onlineOrderStoreOfflineCodeEql;
	private String onlineOrderStoreOfflineCodeLike;
	private String onlineOrderStoreOnlineCodeEql;
	private String onlineOrderStoreOnlineCodeLike;
	private String onlineOrderStoreOnlineNameEql;
	private String onlineOrderStoreOnlineNameLike;
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date createTimeBefore;
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date createTimeAfter;
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date updateTimeBefore;
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date updateTimeAfter;
	private Integer del;
	private String statusEql;
	private String statusLike;
	private String openIdEql;
	private String openIdLike;
	private String roomIdEql;
	private String roomIdLike;
	private String roomOfflineStoreCodeEql;
	private String roomOfflineStoreCodeLike;
	private String roomOfflineStoreNameEql;
	private String roomOfflineStoreNameLike;
	private String roomOnlineStoreCodeEql;
	private String roomOnlineStoreCodeLike;
	private String roomOnlineStoreNameEql;
	private String roomOnlineStoreNameLike;

	public void check(){
		if(this.belongEql == null || "".equals(this.belongEql)){
			throw new DefaultException("归属标识不能为空");
		}
		if(this.pageNum == null || this.pageNum < 1 || this.pageSize == null || this.pageSize < 1){
			throw new DefaultException("分页参数不合法");
		}
	}

	public OrderOnlineDouyinLifePageParamDTO toDTO(){
		OrderOnlineDouyinLifePageParamDTO result = new OrderOnlineDouyinLifePageParamDTO();
		result.setPageNum(this.pageNum);
		result.setPageSize(this.pageSize);
		result.setBelongEql(this.belongEql);
		result.setBelongLike(this.belongLike);
		result.setOnlineOrderNumEql(this.onlineOrderNumEql);
		result.setOnlineOrderNumLike(this.onlineOrderNumLike);
		result.setOnlineOrderTypeEql(this.onlineOrderTypeEql);
		result.setOnlineOrderTypeLike(this.onlineOrderTypeLike);
		result.setOnlineOrderTimeBefore(this.onlineOrderTimeBefore);
		result.setOnlineOrderTimeAfter(this.onlineOrderTimeAfter);
		result.setOnlineOrderCouponCount(this.onlineOrderCouponCount);
		result.setOnlineOrderPrice(this.onlineOrderPrice);
		result.setOnlineChannelEql(this.onlineChannelEql);
		result.setOnlineChannelLike(this.onlineChannelLike);
		result.setOnlineOrderStoreOfflineCodeEql(this.onlineOrderStoreOfflineCodeEql);
		result.setOnlineOrderStoreOfflineCodeLike(this.onlineOrderStoreOfflineCodeLike);
		result.setOnlineOrderStoreOnlineCodeEql(this.onlineOrderStoreOnlineCodeEql);
		result.setOnlineOrderStoreOnlineCodeLike(this.onlineOrderStoreOnlineCodeLike);
		result.setOnlineOrderStoreOnlineNameEql(this.onlineOrderStoreOnlineNameEql);
		result.setOnlineOrderStoreOnlineNameLike(this.onlineOrderStoreOnlineNameLike);
		result.setCreateTimeBefore(this.createTimeBefore);
		result.setCreateTimeAfter(this.createTimeAfter);
		result.setUpdateTimeBefore(this.updateTimeBefore);
		result.setUpdateTimeAfter(this.updateTimeAfter);
		result.setDel(this.del);
		result.setStatusEql(this.statusEql);
		result.setStatusLike(this.statusLike);
		result.setOpenIdEql(this.openIdEql);
		result.setOpenIdLike(this.openIdLike);
		result.setRoomIdEql(this.roomIdEql);
		result.setRoomIdLike(this.roomIdLike);
		result.setRoomOfflineStoreCodeEql(this.roomOfflineStoreCodeEql);
		result.setRoomOfflineStoreCodeLike(this.roomOfflineStoreCodeLike);
		result.setRoomOfflineStoreNameEql(this.roomOfflineStoreNameEql);
		result.setRoomOfflineStoreNameLike(this.roomOfflineStoreNameLike);
		result.setRoomOnlineStoreCodeEql(this.roomOnlineStoreCodeEql);
		result.setRoomOnlineStoreCodeLike(this.roomOnlineStoreCodeLike);
		result.setRoomOnlineStoreNameEql(this.roomOnlineStoreNameEql);
		result.setRoomOnlineStoreNameLike(this.roomOnlineStoreNameLike);
		return result;
	}

	public Integer getPageNum() {
		return pageNum;
	}

	public void setPageNum(Integer pageNum) {
		this.pageNum = pageNum;
	}

	public Integer getPageSize() {
		return pageSize;
	}

	public void setPageSize(Integer pageSize) {
		this.pageSize = pageSize;
	}
	public String getBelongEql() {
		return belongEql;
	}
	public void setBelongEql(String belongEql) {
		this.belongEql = belongEql;
	}
	public String getBelongLike() {
		return belongLike;
	}
	public void setBelongLike(String belongLike) {
		this.belongLike = belongLike;
	}
	public String getOnlineOrderNumEql() {
		return onlineOrderNumEql;
	}
	public void setOnlineOrderNumEql(String onlineOrderNumEql) {
		this.onlineOrderNumEql = onlineOrderNumEql;
	}
	public String getOnlineOrderNumLike() {
		return onlineOrderNumLike;
	}
	public void setOnlineOrderNumLike(String onlineOrderNumLike) {
		this.onlineOrderNumLike = onlineOrderNumLike;
	}
	public String getOnlineOrderTypeEql() {
		return onlineOrderTypeEql;
	}
	public void setOnlineOrderTypeEql(String onlineOrderTypeEql) {
		this.onlineOrderTypeEql = onlineOrderTypeEql;
	}
	public String getOnlineOrderTypeLike() {
		return onlineOrderTypeLike;
	}
	public void setOnlineOrderTypeLike(String onlineOrderTypeLike) {
		this.onlineOrderTypeLike = onlineOrderTypeLike;
	}
	public Date getOnlineOrderTimeBefore() {
		return onlineOrderTimeBefore;
	}
	public void setOnlineOrderTimeBefore(Date onlineOrderTimeBefore) {
		this.onlineOrderTimeBefore = onlineOrderTimeBefore;
	}
	public Date getOnlineOrderTimeAfter() {
		return onlineOrderTimeAfter;
	}
	public void setOnlineOrderTimeAfter(Date onlineOrderTimeAfter) {
		this.onlineOrderTimeAfter = onlineOrderTimeAfter;
	}
	public Integer getOnlineOrderCouponCount() {
		return onlineOrderCouponCount;
	}
	public void setOnlineOrderCouponCount(Integer onlineOrderCouponCount) {
		this.onlineOrderCouponCount = onlineOrderCouponCount;
	}
	public Double getOnlineOrderPrice() {
		return onlineOrderPrice;
	}
	public void setOnlineOrderPrice(Double onlineOrderPrice) {
		this.onlineOrderPrice = onlineOrderPrice;
	}
	public String getOnlineChannelEql() {
		return onlineChannelEql;
	}
	public void setOnlineChannelEql(String onlineChannelEql) {
		this.onlineChannelEql = onlineChannelEql;
	}
	public String getOnlineChannelLike() {
		return onlineChannelLike;
	}
	public void setOnlineChannelLike(String onlineChannelLike) {
		this.onlineChannelLike = onlineChannelLike;
	}
	public String getOnlineOrderStoreOfflineCodeEql() {
		return onlineOrderStoreOfflineCodeEql;
	}
	public void setOnlineOrderStoreOfflineCodeEql(String onlineOrderStoreOfflineCodeEql) {
		this.onlineOrderStoreOfflineCodeEql = onlineOrderStoreOfflineCodeEql;
	}
	public String getOnlineOrderStoreOfflineCodeLike() {
		return onlineOrderStoreOfflineCodeLike;
	}
	public void setOnlineOrderStoreOfflineCodeLike(String onlineOrderStoreOfflineCodeLike) {
		this.onlineOrderStoreOfflineCodeLike = onlineOrderStoreOfflineCodeLike;
	}
	public String getOnlineOrderStoreOnlineCodeEql() {
		return onlineOrderStoreOnlineCodeEql;
	}
	public void setOnlineOrderStoreOnlineCodeEql(String onlineOrderStoreOnlineCodeEql) {
		this.onlineOrderStoreOnlineCodeEql = onlineOrderStoreOnlineCodeEql;
	}
	public String getOnlineOrderStoreOnlineCodeLike() {
		return onlineOrderStoreOnlineCodeLike;
	}
	public void setOnlineOrderStoreOnlineCodeLike(String onlineOrderStoreOnlineCodeLike) {
		this.onlineOrderStoreOnlineCodeLike = onlineOrderStoreOnlineCodeLike;
	}
	public String getOnlineOrderStoreOnlineNameEql() {
		return onlineOrderStoreOnlineNameEql;
	}
	public void setOnlineOrderStoreOnlineNameEql(String onlineOrderStoreOnlineNameEql) {
		this.onlineOrderStoreOnlineNameEql = onlineOrderStoreOnlineNameEql;
	}
	public String getOnlineOrderStoreOnlineNameLike() {
		return onlineOrderStoreOnlineNameLike;
	}
	public void setOnlineOrderStoreOnlineNameLike(String onlineOrderStoreOnlineNameLike) {
		this.onlineOrderStoreOnlineNameLike = onlineOrderStoreOnlineNameLike;
	}
	public Date getCreateTimeBefore() {
		return createTimeBefore;
	}
	public void setCreateTimeBefore(Date createTimeBefore) {
		this.createTimeBefore = createTimeBefore;
	}
	public Date getCreateTimeAfter() {
		return createTimeAfter;
	}
	public void setCreateTimeAfter(Date createTimeAfter) {
		this.createTimeAfter = createTimeAfter;
	}
	public Date getUpdateTimeBefore() {
		return updateTimeBefore;
	}
	public void setUpdateTimeBefore(Date updateTimeBefore) {
		this.updateTimeBefore = updateTimeBefore;
	}
	public Date getUpdateTimeAfter() {
		return updateTimeAfter;
	}
	public void setUpdateTimeAfter(Date updateTimeAfter) {
		this.updateTimeAfter = updateTimeAfter;
	}
	public Integer getDel() {
		return del;
	}
	public void setDel(Integer del) {
		this.del = del;
	}
	public String getStatusEql() {
		return statusEql;
	}
	public void setStatusEql(String statusEql) {
		this.statusEql = statusEql;
	}
	public String getStatusLike() {
		return statusLike;
	}
	public void setStatusLike(String statusLike) {
		this.statusLike = statusLike;
	}
	public String getOpenIdEql() {
		return openIdEql;
	}
	public void setOpenIdEql(String openIdEql) {
		this.openIdEql = openIdEql;
	}
	public String getOpenIdLike() {
		return openIdLike;
	}
	public void setOpenIdLike(String openIdLike) {
		this.openIdLike = openIdLike;
	}
	public String getRoomIdEql() {
		return roomIdEql;
	}
	public void setRoomIdEql(String roomIdEql) {
		this.roomIdEql = roomIdEql;
	}
	public String getRoomIdLike() {
		return roomIdLike;
	}
	public void setRoomIdLike(String roomIdLike) {
		this.roomIdLike = roomIdLike;
	}
	public String getRoomOfflineStoreCodeEql() {
		return roomOfflineStoreCodeEql;
	}
	public void setRoomOfflineStoreCodeEql(String roomOfflineStoreCodeEql) {
		this.roomOfflineStoreCodeEql = roomOfflineStoreCodeEql;
	}
	public String getRoomOfflineStoreCodeLike() {
		return roomOfflineStoreCodeLike;
	}
	public void setRoomOfflineStoreCodeLike(String roomOfflineStoreCodeLike) {
		this.roomOfflineStoreCodeLike = roomOfflineStoreCodeLike;
	}
	public String getRoomOfflineStoreNameEql() {
		return roomOfflineStoreNameEql;
	}
	public void setRoomOfflineStoreNameEql(String roomOfflineStoreNameEql) {
		this.roomOfflineStoreNameEql = roomOfflineStoreNameEql;
	}
	public String getRoomOfflineStoreNameLike() {
		return roomOfflineStoreNameLike;
	}
	public void setRoomOfflineStoreNameLike(String roomOfflineStoreNameLike) {
		this.roomOfflineStoreNameLike = roomOfflineStoreNameLike;
	}
	public String getRoomOnlineStoreCodeEql() {
		return roomOnlineStoreCodeEql;
	}
	public void setRoomOnlineStoreCodeEql(String roomOnlineStoreCodeEql) {
		this.roomOnlineStoreCodeEql = roomOnlineStoreCodeEql;
	}
	public String getRoomOnlineStoreCodeLike() {
		return roomOnlineStoreCodeLike;
	}
	public void setRoomOnlineStoreCodeLike(String roomOnlineStoreCodeLike) {
		this.roomOnlineStoreCodeLike = roomOnlineStoreCodeLike;
	}
	public String getRoomOnlineStoreNameEql() {
		return roomOnlineStoreNameEql;
	}
	public void setRoomOnlineStoreNameEql(String roomOnlineStoreNameEql) {
		this.roomOnlineStoreNameEql = roomOnlineStoreNameEql;
	}
	public String getRoomOnlineStoreNameLike() {
		return roomOnlineStoreNameLike;
	}
	public void setRoomOnlineStoreNameLike(String roomOnlineStoreNameLike) {
		this.roomOnlineStoreNameLike = roomOnlineStoreNameLike;
	}
}
